package com.template.mongo.persistence.dao;

import java.util.List;

import com.template.mongo.persistence.dao.base.GenericMongoBaseDao;
import com.template.mongo.persistence.entity.Account;
import com.template.mongo.utils.PagingInfo;


public interface AccountDao extends GenericMongoBaseDao<Account> {
	Account findByUserName(String userName);

	List<Account> findByEmail(String email);

	Account findByMobile(String mobile);

	List<Account> findByLevel(int level);

	List<Account> findByIsActive(short isActive);

	boolean exists(String userName);

	Account findUserByEmail(String email);

	List<Account> findByuserName(String kw, PagingInfo pInfo);

	List<Account> getUsers(String kw, long departmentId, PagingInfo pInfo);

	boolean checkUserNameIgnore(String userName, String userNameOld);
}
